export const languageNameToLocale = {
  en: {
    Auto: 'auto',
    English: 'en',
    'Simplified Chinese': 'zh-CN',
    'Traditional Chinese': 'zh-Hant',
    Japanese: 'ja',
    French: 'fr',
    'Standard German': 'de-DE',
    Korean: 'ko',
    Hindi: 'hi',
    Spanish: 'es',
    Russian: 'ru',
    German: 'de',
    Italian: 'it',
    Turkish: 'tr',
    Portuguese: 'pt',
    Vietnamese: 'vi',
    Indonesian: 'id',
    Thai: 'th',
    Arabic: 'ar',
    Mongolian: 'mn',
    Persian: 'fa',
  },
  'zh-CN': {
    自动检测: 'auto',
    英语: 'en',
    简体中文: 'zh-CN',
    繁体中文: 'zh-Hant',
    日语: 'ja',
    法语: 'fr',
    标准德语: 'de-DE',
    韩语: 'ko',
    印地语: 'hi',
    西班牙语: 'es',
    俄语: 'ru',
    德语: 'de',
    意大利语: 'it',
    土耳其语: 'tr',
    葡萄牙语: 'pt',
    越南语: 'vi',
    印度尼西亚语: 'id',
    泰语: 'th',
    阿拉伯语: 'ar',
    蒙古语: 'mn',
    波斯语: 'fa',
  },
};

export const localeToLanguageName = {
  en: {
    auto: 'Auto Detect',
    en: 'English',
    'zh-CN': '简体中文',
    'zh-Hant': '繁體中文',
    ja: '日本語',
    fr: 'Français',
    'de-DE': 'Deutsch',
    ko: '한국어',
    hi: 'हिंदी',
    'fr-FR': 'Français',
    es: 'Español',
    ru: 'русский',
    de: 'Deutsch',
    it: 'italiano',
    tr: 'Türkçe',
    pt: 'português',
    vi: 'Tiếng Việt',
    id: 'Indonesia',
    th: 'ไทย',
    ar: 'العربية',
    mn: '蒙古语',
    fa: 'فارسی',
  },
  'zh-CN': {
    auto: '自动检测',
    en: 'English',
    'zh-CN': '简体中文',
    'zh-Hant': '繁體中文',
    ja: '日本語',
    fr: 'Français',
    'de-DE': 'Deutsch',
    ko: '한국어',
    hi: 'हिंदी',
    'fr-FR': 'Français',
    es: 'Español',
    ru: 'русский',
    de: 'Deutsch',
    it: 'italiano',
    tr: 'Türkçe',
    pt: 'português',
    vi: 'Tiếng Việt',
    id: 'Indonesia',
    th: 'Thai',
    ar: 'العربية',
    mn: '蒙古语',
    fa: 'فارسی',
  },
};

export const enLanguageName = Object.keys(languageNameToLocale.en);
export const zhCNLanguageName = Object.keys(languageNameToLocale['zh-CN']);
export const enLocale = Object.keys(localeToLanguageName.en) as OutputLocale[];
export const zhCNLocale = Object.keys(localeToLanguageName['zh-CN']);

export type OutputLocale = keyof typeof localeToLanguageName.en;
